<?php
namespace lib\db;
class MYSQL{
    private $mysql;
    public function __construct() //构造方法
    {
        global $web_config;
        var_export($web_config);
        //类new出来的时候才会触发__construct()
        $this->mysql=mysqli_connect(
            $web_config['db']['host'],
            $web_config['db']['user'],
            $web_config['db']['pwd'],
            $web_config['db']['dbname'],
            $web_config['db']['port']
        );
        if (!$this->mysql)
        {
            echo mysqli_connect_errno();
            exit;
        }
        mysqli_query($this->mysql,"SET NAMES UTF8");
    }
    public function insert($table,$data)
    {
        $field=array_keys($data);//array_keys(array 必需。规定输入的数组。,指定值的索引（键）)函数返回包含数组中所有键名的一个新数组。
        $field='`'.implode('`,`',$field).'`';//implode(可选。规定数组元素之间放置的内容。,	必需。要组合为字符串的数组。) 函数返回一个由数组元素组合成的字符串。
        $val="'".implode("','",$data)."'";
        $sql="INSERT INTO `$table`($field) VALUES($val)";
        return mysqli_query($this->mysql,$sql);
        /*$bool=mysqli_query($this->mysql,$sql);
        if (!$bool) throw new ;*/

    }
    public function select($sql,$number=false)
    {
        $arr=array();
        if ($number!==false)
        {
            $limit=" LIMIT $number";
            $sql.=$limit;
        }
        $data=mysqli_query($this->mysql,$sql);
        while ($a=mysqli_fetch_assoc($data))
        {
            $arr[]=$a;
        }
        mysqli_free_result($data);
        return $arr;
    }
    public function update($table,$data,$where)
    {
        $str='';
        foreach ($data as $key=>$v)
        {
            $str.='`'.$key.'`='."'".$v."',";
        }
        //rtrim(必需。规定要检查的字符串。,规定从字符串中删除哪些字符)函数移除字符串右侧的空白字符或其他预定义字符。
        $str=rtrim($str,',');
        $sql="UPDATE `$table` SET $str WHERE $where";
        //echo $sql;
        return mysqli_query($this->mysql,$sql);
    }
    public function delete($table,$where)
    {
        $sql="DELETE FROM `$table` WHERE $where";
        return mysqli_query($this->mysql,$sql);
    }
    public function __destruct()//析构函数
    {
        mysqli_close($this->mysql);
    }
    public function autoID()
    {
        //mysqli_insert_id(必需。规定要使用的 MySQL 连接。) 函数返回最后一个查询中自动生成的 ID
        return mysqli_insert_id($this->mysql);
    }
    public function select_db()
    {

    }
    public function query()
    {

    }
}
/*$mysql=new MYSQL();
$pwd=addslashes("hell11'o php");
$mysql->insert('user',array(
    'name'=>11,
    'pwd'=>$pwd,
    'phone'=>33
));
echo $mysql->autoID();*/
/*$arr=$mysql->select("SELECT * FROM user",5);
var_export($arr);*/
/*$arr=array(
    'name'=>'1',
    'pwd'=>'1'
);
$bool=$mysql->update('user',$arr,'uid=11');
if ($bool)
{
    echo 'ok';
}else{
    echo 'no';
}*/
